package org.tri.gui.view;

import java.awt.Font;
import java.awt.font.TextAttribute;
import java.util.HashMap;
import java.util.Map;
import javax.swing.UIManager;

/**
 * La clase {@code Constants} contiene algunas constantes utiles para utilizar
 * en las vistas.
 * @author kiira
 * @version 1.0, Feb 11, 2012
 */
public class ViewConstants {
    /** Fuente default del sistema para los labels. */
    public static final Font defaultLabelFont;
    /** Fuente default del sistema para los labesl pero con subrayado. */
    public static final Font underlinedLabelFont;
    /** Constante que indica que una vista termino sin ningún cambio. */
    public static final int NOTHING = 0;
    /** Constante que indica que una vista termino modificando su entidad. */
    public static final int MODIFIED = 1;
    /** Constante que indica que una vista termino eliminando su entidad. */
    public static final int DELETED = 2;
    /** Constante que indica que una vista termino agregando una entidad. */
    public static final int ADDED = 3;

    /**
     * Constructor estático que se encarga de recuperar las fonts.
     */
    static {
        //obtenemos la fuente default del label
        defaultLabelFont = UIManager.getFont( "Label.font" );

        //aplicamos una derivación para agregar subrayado
        Map<TextAttribute, Integer> fontAttributes =
        new HashMap<TextAttribute, Integer>();
        fontAttributes.put( 
                TextAttribute.UNDERLINE, TextAttribute.UNDERLINE_ON );
        underlinedLabelFont = defaultLabelFont.deriveFont( fontAttributes );
        
    }//end static block
    
}//end clase ViewConstants